package com.ruoyi.deeplearn.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 模型对象 deep_model
 *
 * @author rww
 * @date 2022-12-22
 */
public class DeepModel extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 模块ID */
    private Long id;

    private Long moduleId;
    private String moduleName;
    private String moduleType;//
    private String dataType;//数据类型

    private Long moduleNetId;
    private String moduleNetName;
    private String moduleNetConfigType;

    /** 数据集名称 */
    @Excel(name = "数据集名称")
    private String name;

    /** 数据集编码 */
    @Excel(name = "数据集编码")
    private String code;

    /** 状态：（0正常 1停用） */
    @Excel(name = "状态：", readConverterExp = "0=正常,1=停用")
    private Integer status;

    private Integer sort;


    /** 数据集类型id  deep_dataset_type */

    /** 当前版本 */
    @Excel(name = "当前版本")
    private Long currentVersionId;
    private Integer currentVersionCode;//current_version_code
    private DeepModelVersion currentVersion;
    private List<DeepModelVersion> currentVersions;
    private String currentDeployStatus;
    private String currentTrainStatus;

    ///////////////////////////////////////////////


    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public String getDataType() {
        return dataType;
    }

    public void setDataType(String dataType) {
        this.dataType = dataType;
    }

    public String getModuleNetConfigType() {
        return moduleNetConfigType;
    }

    public void setModuleNetConfigType(String moduleNetConfigType) {
        this.moduleNetConfigType = moduleNetConfigType;
    }

    public String getCurrentDeployStatus() {
        return currentDeployStatus;
    }

    public void setCurrentDeployStatus(String currentDeployStatus) {
        this.currentDeployStatus = currentDeployStatus;
    }

    public String getCurrentTrainStatus() {
        return currentTrainStatus;
    }

    public void setCurrentTrainStatus(String currentTrainStatus) {
        this.currentTrainStatus = currentTrainStatus;
    }

    public List<DeepModelVersion> getCurrentVersions() {
        return currentVersions;
    }

    public void setCurrentVersions(List<DeepModelVersion> currentVersions) {
        this.currentVersions = currentVersions;
    }

    public Integer getCurrentVersionCode() {
        return currentVersionCode;
    }

    public void setCurrentVersionCode(Integer currentVersionCode) {
        this.currentVersionCode = currentVersionCode;
    }

    public Long getModuleNetId() {
        return moduleNetId;
    }

    public void setModuleNetId(Long moduleNetId) {
        this.moduleNetId = moduleNetId;
    }

    public String getModuleNetName() {
        return moduleNetName;
    }

    public void setModuleNetName(String moduleNetName) {
        this.moduleNetName = moduleNetName;
    }

    public Long getModuleId() {
        return moduleId;
    }

    public void setModuleId(Long moduleId) {
        this.moduleId = moduleId;
    }

    public String getModuleName() {
        return moduleName;
    }

    public void setModuleName(String moduleName) {
        this.moduleName = moduleName;
    }

    public String getModuleType() {
        return moduleType;
    }

    public void setModuleType(String moduleType) {
        this.moduleType = moduleType;
    }

    public DeepModelVersion getCurrentVersion() {
        return currentVersion;
    }

    public void setCurrentVersion(DeepModelVersion currentVersion) {
        this.currentVersion = currentVersion;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setName(String name)
    {
        this.name = name;
    }

    public String getName()
    {
        return name;
    }
    public void setCode(String code)
    {
        this.code = code;
    }

    public String getCode()
    {
        return code;
    }
    public void setStatus(Integer status)
    {
        this.status = status;
    }

    public Integer getStatus()
    {
        return status;
    }


    public void setCurrentVersionId(Long currentVersionId)
    {
        this.currentVersionId = currentVersionId;
    }

    public Long getCurrentVersionId()
    {
        return currentVersionId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("name", getName())
            .append("code", getCode())
            .append("status", getStatus())
            .append("currentVersionId", getCurrentVersionId())
            .toString();
    }
}
